// 引入静态路由及动态路由
import { asyncRoutes, constantRoutes } from '@/router'
const state = {

  // 定义一个新数组用来装筛选后剩下的路由
  routes: []
}
const mutations = {
  setRoutes(state, routes) {
    //   静态路由和筛选后剩下的路由拼接到一起
    state.routes = [...constantRoutes, ...routes]
    // console.log('筛选后剩下的', state.routes)
  }
}
const actions = {
  // 由于需要共享(一方面是路由配置, 一方面是菜单渲染)
  // 筛选路由逻辑存在 vuex 中
  filterRoutes(store, menus) {
    // 1. 动态路由列表
    // 2. 个人权限列表
    const routes = asyncRoutes.filter(route => menus.includes(route.name))
    store.commit('setRoutes', routes)
    console.log('筛选后剩下的', routes)
    return routes
  }
}
// 导出
export default {
  namespaced: true,
  state,
  mutations,
  actions
}
